package com.gary;

/**
 * 给定两个字符串 s1 和 s2，请编写一个程序，确定其中一个字符串的字符重新排列后，能否变成另一个字符串。
 *
 * 示例 1：
 * 输入: s1 = "abc", s2 = "bca"
 * 输出: true
 *
 * 示例 2：
 * 输入: s1 = "abc", s2 = "bad"
 * 输出: false
 *
 * 说明：
 *     0 <= len(s1) <= 100
 *     0 <= len(s2) <= 100
 * @author pengrui
 * @date 2022/9/27
 **/
public class CheckPermutation {
    public static void main(String[] args) {
        boolean b = checkPermutation("", "");
        System.out.println(b);
    }
    public static boolean checkPermutation(String s1, String s2) {

        //长度不能返回false
        if (s1.length() != s2.length()) {
            return false;
        }
        char[] arr1 = s1.toCharArray();
        char[] arr2 = s2.toCharArray();

        for (int i = 0; i < arr1.length; i++) {
            char rm = arr1[i];
            for (int j = 0; j < arr2.length; j++) {
                if (rm == arr2[j]) {
                    arr2[j] = '#';
                    break;
                }
            }
        }

        for (int i = 0; i < arr2.length; i++) {
            if (arr2[i] != '#') {
                return false;
            }
        }
        return true;

    }
}
